package com.ruoyi.project.system.leaverequest.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.framework.aspectj.lang.annotation.Excel;
import com.ruoyi.framework.web.domain.BaseEntity;

/**
 * 【请填写功能名称】对象 ve_leaverequest
 * 
 * @author ruoyi
 * @date 2024-01-06
 */
public class VeLeaverequest extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 驾驶员ID */
    private Long EmployeeID;

    /** 驾驶员 */
    @Excel(name = "驾驶员")
    private Long Name;

    private Long DriverID;
    private String DriverName;

    /** 驾驶员部门 */
    @Excel(name = "驾驶员部门")
    private String Department;

    /** 驾驶员职位 */
    @Excel(name = "驾驶员职位")
    private String Position;

    /** 请假日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "请假日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date LeaveDate;

    /** 请假类型 */
    @Excel(name = "请假类型")
    private Long LeaveType;

    /** 请假时长 */
    @Excel(name = "请假时长")
    private Long LeaveDuration;

    /** 请假事由 */
    @Excel(name = "请假事由")
    private String LeaveReason;

    /** 审批人 */
    @Excel(name = "审批人")
    private String Approver;

    /** 审批状态 */
    @Excel(name = "审批状态")
    private Long ApprovalStatus;

    /** 审批日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "审批日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date ApprovalDate;

    /** 是否需要替班 */
    @Excel(name = "是否需要替班")
    private String Substitute;

    /** 流程id */
    @Excel(name = "流程id")
    private Long Lid;

    public Long getDriverID() {
        return DriverID;
    }

    public void setDriverID(Long driverID) {
        DriverID = driverID;
    }

    public String getDriverName() {
        return DriverName;
    }

    public void setDriverName(String driverName) {
        DriverName = driverName;
    }

    public void setEmployeeID(Long EmployeeID)
    {
        this.EmployeeID = EmployeeID;
    }

    public Long getEmployeeID()
    {
        return EmployeeID;
    }

    public Long getName() {
        return Name;
    }

    public void setName(Long name) {
        Name = name;
    }

    public void setDepartment(String Department)
    {
        this.Department = Department;
    }

    public String getDepartment()
    {
        return Department;
    }
    public void setPosition(String Position)
    {
        this.Position = Position;
    }

    public String getPosition()
    {
        return Position;
    }
    public void setLeaveDate(Date LeaveDate)
    {
        this.LeaveDate = LeaveDate;
    }

    public Date getLeaveDate()
    {
        return LeaveDate;
    }

    public Long getLeaveType() {
        return LeaveType;
    }

    public void setLeaveType(Long leaveType) {
        LeaveType = leaveType;
    }

    public void setLeaveDuration(Long LeaveDuration)
    {
        this.LeaveDuration = LeaveDuration;
    }

    public Long getLeaveDuration()
    {
        return LeaveDuration;
    }
    public void setLeaveReason(String LeaveReason)
    {
        this.LeaveReason = LeaveReason;
    }

    public String getLeaveReason()
    {
        return LeaveReason;
    }
    public void setApprover(String Approver)
    {
        this.Approver = Approver;
    }

    public String getApprover()
    {
        return Approver;
    }

    public Long getApprovalStatus() {
        return ApprovalStatus;
    }

    public void setApprovalStatus(Long approvalStatus) {
        ApprovalStatus = approvalStatus;
    }

    public void setApprovalDate(Date ApprovalDate)
    {
        this.ApprovalDate = ApprovalDate;
    }

    public Date getApprovalDate()
    {
        return ApprovalDate;
    }
    public void setSubstitute(String Substitute)
    {
        this.Substitute = Substitute;
    }

    public String getSubstitute()
    {
        return Substitute;
    }
    public void setLid(Long Lid)
    {
        this.Lid = Lid;
    }

    public Long getLid()
    {
        return Lid;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("EmployeeID", getEmployeeID())
            .append("Name", getName())
            .append("Department", getDepartment())
            .append("Position", getPosition())
            .append("LeaveDate", getLeaveDate())
            .append("LeaveType", getLeaveType())
            .append("LeaveDuration", getLeaveDuration())
            .append("LeaveReason", getLeaveReason())
            .append("Approver", getApprover())
            .append("ApprovalStatus", getApprovalStatus())
            .append("ApprovalDate", getApprovalDate())
            .append("Substitute", getSubstitute())
            .append("Lid", getLid())
            .toString();
    }
}
